﻿//#include <iostream>
//using namespace std;
//void swap(int* pa, int* pb)
//{
//    int z = *pa;
//    *pa = *pb;
//    *pb = z;
//}
//int main()
//{
//    int a, b;
//    cin >> a >> b;
//    swap(&a, &b);
//    cout << a<<" " << b<<endl;
//    return 0;
//}
//
//int main()
//{
//	int arr[3] = { 0 };
//	int* p = arr;
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	for (int i = 0; i < sz; i++)
//	{
//		cin>>arr[i]//p[i];
//	}
//	for (int j = 0; j < sz; j++)
//	{
//		cout << p[j];//*(p+j)==*(arr+j)=arr[j]=p[j]//*p \n p++
//	}
//	return 0;
//}
//void swre(int* arr, int sz);
//int main()
//{
//	int arr[4] = { 1,2,3,4 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	swre(arr, sz);
//	return 0;
//}
//void swre(int arr[]//*arr, int sz)
//{
//	for (int i = 0; i < sz; i++)
//	{
//		cout << *(arr + i)==*(p+i);
//	}
//}
//p=arr,*(p+i)==*p \n p++;
//void printf_arr(int* p, int sz);
//void printf_arr1(int* p, int sz);
//int main()
//{
//	int arr[4] = { 2,4,6,2 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	printf_arr(arr, sz);
//	printf_arr1(arr, sz);
//	return 0;
//}
//void printf_arr(int* p, int sz)
//{
//	*p = p[0];
//	for (int i = 0; i < sz-1; i++)
//	{
//		int flag = 0;
//		for (int j = 0; j < sz - 1 - i; j++)
//		{
//			if (*(p+j) >*(p+j + 1))
//			{
//				flag = 1;
//				int z = *(p+j);
//				*(p+j) = *(p +j+ 1);
//				*(p +j+ 1) = z;
//			}
//		}
//		if (flag != 1)
//		{
//			break;
//		}
//	}
//}
//void printf_arr1(int* p, int sz)
//{
//	for (int i = 0; i < sz; i++)
//	{
//		cout << *(p+i);
//	}
//}
//int n, x;
//const int N = 100010;
//int q[N], v[N];
//bool st[N];//击破
//int main()
//{
//	scanf_s("%d%d", &n, &n);
//	for (int i = 0; i < n; i++)
//	{
//		scanf_s("%d%d", &q[N], &v[N]);
//	}
//		int res = 0, cnt = 0, e = 1, d = 1;
//		while (cnt < n * 26)
//		{
//			cnt++;
//			if (q[N])
//			{
//				if (e >= v[N] && !st[x])//击破
//				{
//					st[x] = true;
//					res++;
//				}
//			}
//			else
//			{
//				e += v[N];
//				d = -d;
//				x = e * d;
//			}
//			if (x<1 || x>n)
//				break;
//		}
//		printf("%d\n", res);
//		return 0;
//}
//#include <iostream>
//#include <cstring>
//#include <algorithm>
//using namespace std;
//const int N = 10010;
//int n, x;//x初始位置
//int q[N], v[N];//击破位置//跳板
//bool st[N];//判断是否被击破
//int main() 
//{
//	cin >> n >> x;
//	for (int i = 1; i <= n; i++)
//	{
//		cin>>q[i]>>v[i];
//	}
//	int res = 0, cnt = 0, e = 1, d = 1;//答案// 步数//能量//方向
//	while (cnt < 26 * n)
//	{
//		cnt++;
//		if (q[x])
//		{
//			if (e >= v[x] && !st[x])//没有被击破
//			{
//				st[x] = true;
//				res++;
//			}
//		}
//		else
//			e += v[x];
//			d = -d;
//			x += e * d;
//		if (x<1 || x>n)
//			break;
//	}
//	cout << res << endl;
//		return 0;
//}
//#include <iostream>
//#include <cstring>
//#include <algorithm>
//using namespace std;
//
//const int N = 10010;
//int n, x; // x初始位置
//int q[N], v[N]; // 击破位置//跳板
//bool st[N]; // 判断是否被击破
//
//int main() {
//    cin >> n >> x;
//
//    // 检查 n 的有效性
//    if (n <= 0 || n > N) {
//        cout << "输入的 n 不合法" << endl;
//        return 1;
//    }
//
//    // 检查初始位置 x 的有效性
//    if (x < 0 || x >= n) {
//        cout << "输入的初始位置 x 不合法" << endl;
//        return 1;
//    }
//
//    for (int i = 0; i < n; i++) {
//        cin >> q[i] >> v[i];
//    }
//
//    int res = 0, cnt = 0, e = 1, d = 1; // 答案// 步数//能量//方向
//    while (cnt < 26 * n) {
//        cnt++;
//        if (q[x]) {
//            if (e >= v[x] && !st[x]) { // 没有被击破
//                st[x] = true;
//                res++;
//            }
//        }
//        else {
//            e += v[x];
//            d = -d;
//            x += e * d;
//        }
//
//        // 正确的越界判断
//        if (x < 0 || x >= n) {
//            break;
//        }
//    }
//    cout << res << endl;
//    return 0;
//}
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 10010;
////x初始位置
//int q[N], v[N];//击破位置//跳板
//bool st[N];//判断是否被击破
//int main()
//{int n, x;
//	cin >> n >> x;
//	int q[N], v[N];
//	for (int i = 1; i <= n; i++)
//	{
//		cin >> q[i] >> v[i];
//	}
//	int res = 0, cnt = 0, e = 1, d = 1;
//	while (cnt< n * 26)
//	{
//		cnt++;
//		if (q[x])
//		{
//			if (e >= v[x] && !st[x])
//			{
//				res++;
//				st[x] = true;
//			}
//		}
//		else
//		{
//			e += v[x];
//			d = -d;
//			x += e * d;
//		}
//		if (x<1 || x>n)
//			break;
//	}
//	cout << res << endl;
//	return 0;
//}
//#include <iostream>
//using namespace std;
//int main()
//{
//	int arr1[3] = { 1,2,3 };
//	int arr2[3] = { 2,3,4 };
//	int arr3[3] = { 4,5,6 };
//	int *arr[3] = { arr1,arr2,arr3 };
//	for (int i = 0; i < 3; i++)
//	{
//		for (int j = 0; j < 3; j++)
//		{
//			cout << arr[i][j];
//		}
//		cout << endl;
//	}
//return 0;
//}
	

//#include <iostream>
//using namespace std;
//int main()
//{
//	int a = 10, b = 20, c = 30;
//	int *arr[3] = { &a,&b,&c };
//	for (int i = 0;i < 3; i++)
//	{
//		cout << *arr[i]<<endl;
//	}
//	return 0;
//
//}
//#include <iostream>
//using namespace std;
//int main()
//{
	//int arr1[10] = { 1,2,3 };
	//char arr[10] = "asdfgh";
	//char* p = arr;
	//cout << arr<<endl;
	//cout <<* p<<endl;//"a"打印的是字符串首字母
	//cout << p<<endl;//打印的是整个字符串
	//int* pc = arr1;
	//cout << *arr1 << endl;//1,首位的值赋给*arr1
	/*int arr2[10];
	int (*p)[10] = &arr2;
	cout << *p;
	char *arr3[8];
	char* (*pc)[8] = &arr3;
	return 0;*/
//}
//#include <iostream>
//using namespace std;
//int main()
//{
//	int arr[6] = { 1,2,3,4 };
//	int (*p)[6] = &arr;
//	//*p = arr;//数组指针，数组存在指针里面；；
//		for (int i = 0; i < 6; i++)
//	{
//		cout << (*p)[i]<<endl;
//		cout << arr[i] << endl;
//	}
//		return 0;
//}
//#include <iostream>
//using namespace std;
//int main()
//{
//	int arr[3][5] = { {1,2,3,4,5},{2,3,4,5,6},{6,7,8,9,10} };
//	int(* p)[3] = &arr;//*p=arr指向的是整个数组
//	for (int i = 0; i < 3; i++)
//	{
//		cout << arr[i]<<endl;
//		cout << (*p)[i]<<endl;
//	//p++;
//	}
//	return 0;
//}
//#include <iostream>
//void Printf(int (*p)[5], int r, int d);
//using namespace std;
//int main()
//{
//	int arr[3][5] = { {1,2,3,4,5},{2,3,4,5,6},{6,7,8,9,10} };
//	Printf(arr, 3, 5);
//	return 0;
//}
//void Printf(int (*p)[5], int r, int d)//传的是第一行的数组
//{
//	for (int i = 0; i <r; i++)
//	{
//		for (int j = 0; j <d; j++)
//		{
//			//cout << p [i][j] ;//指向第一行数组的元素
//			cout << *(*(p + i) + j);//*(p+i)找到第一行的元素，+j再找列的元素
//		}
//		cout << endl;
//	}
//#include <iostream>
//int add(int a, int b);
//using namespace std;
//int main()
//{
//	int a = 10,b = 20;
//	int(* p)(int a,int b) = add;//p=add;
//	int r = p(a, b);
//	cout << r << endl;
//	return 0;
//}
//int add(int a, int b)
//{
//	return a + b;
//}
////#include <iostream>
////int add(int a, int b);
////using namespace std;
////int main()
//{
//	int a = 10, b = 20;
//	int(*p)(int , int )参数 = &add;//p=add;
//	int r = (*p)(a, b);
//	cout << r << endl;
//	return 0;
//}
//int add(int a, int b)
//{
//	return a + b;
//}
//#include <iostream>
//int add(int a, int b);
//using namespace std;
//int add(int a, int b)
//{
//	return a + b;
//}
//int sub(int a, int b)
//{
//	return a - b;
//}
//int asd(int a, int b)
//{
//	return a * b;
//}
//int main()
//{
//	int (*p1)(int, int) = add;
//	int (*p2)(int, int) =sub;
//	int (*p3)(int, int) = asd;
//	int a = 100, b = 200;
//	int (*p[4])(int, int) = { add,sub,asd };
//	int r = (*p[2])(a, b);
//	cout << r;
//	return 0;
//}
//#include <iostream>
//using namespace std;
//void menu()
//{
//	printf("1.加");
//	printf("2.减");
//	printf("3.乘");
//	printf("4.除");
//	printf("0.exit");
//}
//int add(int a, int b)
//{
//	return a + b;
//}
//int sub(int a, int b)
//{
//	return a - b;
//}
//int asd(int a, int b)
//{
//	return a * b;
//}
//int fgh(int a, int b)
//{
//	return a / b;
//}
//int main()
//{
//	int input = 0;
//	do
//	{
//		menu();
//		int (*p[5])(int, int) = { 0,add,sub,asd,fgh };
//		int a = 0, b = 0;
//		cin >> input;
//		cin >> a >> b;
//		int r = p[input](a, b);
//		cout << r;
//	} while (input);
//	return 0;
//}
#include <iostream>
using namespace std;
int main()
{
	int len = 0;
	char arr[10];
	char* p = arr;
	for (int i = 0; i < len; i++)
	{
		cin >> p[i];
	}
	len = sizeof(arr) / sizeof(arr[0]);
	int m = 0;
	cin >> m;
	for (int i = m - 1; i < len; i++)
	{
		cout << p[i];
	}
	return 0;
}
